package cn.huiyunche.base.service.vo;

import cn.huiyunche.base.service.handler.JsonDateSerializerByLine;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @ClassName: TaskListOrderVo
 * @Description: 任务列表订单VO
 * @author: Aaron
 * @date: 2016年6月16日 下午8:17:27
 */
public class TaskListOrderVo implements Serializable {

    /**
     * @fieldName: serialVersionUID
     * @fieldType: long
     * @Description: TODO
     */
    private static final long serialVersionUID = -5754086843049478013L;

    /**
     * @fieldName: id
     * @fieldType: Long
     * @Description: TODO
     */
    private Long id;

    /**
     * @fieldName: orderCode
     * @fieldType: String
     * @Description: 订单编号
     */
    private String orderCode;

    /**
     * @fieldName: departCityName
     * @fieldType: String
     * @Description: 出发城市
     */
    private String departCityName;

    /**
     * @fieldName: departUnit
     * @fieldType: String
     * @Description: 出发单位
     */
    private String departUnit;

    /**
     * @fieldName: receiptCityName
     * @fieldType: String
     * @Description: 目的地城市
     */
    private String receiptCityName;

    /**
     * @fieldName: receiptUnit
     * @fieldType: String
     * @Description: 接收单位
     */
    private String receiptUnit;

    /**
     * @fieldName: deliveryDate
     * @fieldType: Date
     * @Description: 出发日期
     */
    @JsonSerialize(using = JsonDateSerializerByLine.class)
    private Date deliveryDate;

    /**
     * @fieldName: arriveDate
     * @fieldType: Date
     * @Description: 到达日期
     */
    @JsonSerialize(using = JsonDateSerializerByLine.class)
    private Date arriveDate;

    /**
     * @fieldName: status
     * @fieldType: Integer
     * @Description: 订单状态
     */
    private Integer status;

    /**
     * @fieldName: statusText
     * @fieldType: String
     * @Description: 订单状态显示文本
     */
    private String statusText;

    /**
     * @fieldName: vehicles
     * @fieldType: List<OrderDetail>
     * @Description: 订单详情（车辆信息）
     */
    private List<COrderDetailVo> vehicles = new ArrayList<COrderDetailVo>(0);

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getOrderCode() {
        return orderCode;
    }

    public void setOrderCode(String orderCode) {
        this.orderCode = orderCode;
    }

    public String getDepartCityName() {
        return departCityName;
    }

    public void setDepartCityName(String departCityName) {
        this.departCityName = departCityName;
    }

    public String getDepartUnit() {
        return departUnit;
    }

    public void setDepartUnit(String departUnit) {
        this.departUnit = departUnit;
    }

    public String getReceiptCityName() {
        return receiptCityName;
    }

    public void setReceiptCityName(String receiptCityName) {
        this.receiptCityName = receiptCityName;
    }

    public String getReceiptUnit() {
        return receiptUnit;
    }

    public void setReceiptUnit(String receiptUnit) {
        this.receiptUnit = receiptUnit;
    }

    public Date getDeliveryDate() {
        return deliveryDate;
    }

    public void setDeliveryDate(Date deliveryDate) {
        this.deliveryDate = deliveryDate;
    }

    public Date getArriveDate() {
        return arriveDate;
    }

    public void setArriveDate(Date arriveDate) {
        this.arriveDate = arriveDate;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getStatusText() {
        return statusText;
    }

    public void setStatusText(String statusText) {
        this.statusText = statusText;
    }

    public List<COrderDetailVo> getVehicles() {
        return vehicles;
    }

    public void setVehicles(List<COrderDetailVo> vehicles) {
        this.vehicles = vehicles;
    }
}
